package com.letcoding.easyExcel.util;

import java.io.File;
import java.io.InputStream;

/**
 * @ClassName FileUtil
 * @Description 文件工具类
 * @Author will
 * @Date 2021/5/24 11:09
 * @Company 北京华焱坤泰科技有限公司
 */
public class FileUtil {
    /**
     * 读取文件成输入流
     * @param fileName   文件名称
     * @return
     */
    public static InputStream getResourcesFileInputStream(String fileName) {
        return Thread.currentThread().getContextClassLoader().getResourceAsStream("" + fileName);
    }

    /**
     * 获取文件资源根路径，resource
     * @return
     */
    public static String getPath() {
        return FileUtil.class.getResource("/").getPath();
    }

    /**
     * 创建resource下文件
     * @param pathName   路径名称
     * @return
     */
    public static File createNewFile(String pathName) {
        File file = new File(getPath() + pathName);
        if (file.exists()) {
            file.delete();
        } else {
            if (!file.getParentFile().exists()) {
                file.getParentFile().mkdirs();
            }
        }
        return file;
    }

    /**
     * 读取文件
     * @param pathName    全路径文件名
     * @return
     */
    public static File readFile(String pathName) {
        return new File(getPath() + pathName);
    }

    /**
     * 读取用户目录下面的文件
     * @param pathName    全路径文件名
     * @return
     */
    public static File readUserHomeFile(String pathName) {
        return new File(System.getProperty("user.home") + File.separator + pathName);
    }
}
